import request from '@/utils/request'

/**
 * 获取 Job 列表
 * @param {string} nameSpace - 命名空间（空字符串表示获取所有命名空间的 Job）
 * @returns {Promise} 请求的 Promise 对象
 */
export function GetJobList(nameSpace) {
  const url = nameSpace ? `/jobs/${nameSpace}` : '/jobs/'
  return request({
    url: url,
    method: 'get'
  })
}

/**
 * 创建 Job
 * @param {Object} data - 创建 Job 的参数
 * @param {string} data.jobName - Job 名称
 * @param {string} data.nameSpace - 命名空间
 * @param {string} data.containerName - 容器名称
 * @param {string} data.containerImage - 容器镜像
 * @param {string} data.command - 执行命令
 * @returns {Promise} 请求的 Promise 对象
 */
export function CreateJob(data) {
  return request({
    url: '/jobs/',
    method: 'post',
    data: data
  })
}

/**
 * 删除 Job
 * @param {string} nameSpace - 命名空间
 * @param {string} jobName - 要删除的 Job 名称
 * @returns {Promise} 请求的 Promise 对象
 */
export function DeleteJob(nameSpace, jobName) {
  return request({
    url: `/jobs/${nameSpace}/${jobName}`,
    method: 'delete'
  })
}

/**
 * 获取 Job 详情
 * @param {string} nameSpace - 命名空间
 * @param {string} jobName - 要查询的 Job 名称
 * @returns {Promise} 请求的 Promise 对象
 */
export function GetJobDetail(nameSpace, jobName) {
  return request({
    url: `/jobs/${nameSpace}/${jobName}`,
    method: 'get'
  })
}
